Fundamentos de Node-RED
Esta página proporciona una introducción a Node-RED tal como se implementa en el sistema de cámaras OV80i, explicando conceptos y características clave que le ayudarán a crear flujos de inspección potentes.
¿Qué es Node-RED?
Node-RED es una herramienta de programación basada en flujos que ofrece un editor basado en navegador para conectar visualmente dispositivos de hardware, APIs y servicios en línea. Originalmente desarrollado por IBM, se ha convertido en un proyecto de código abierto que ofrece un enfoque de bajo código para la automatización y el procesamiento de datos.
La cámara OV80i utiliza Node-RED como su plataforma de automatización, permitiéndole crear flujos de inspección sofisticados con un conocimiento mínimo de programación. A través de una interfaz sencilla de arrastrar y soltar, puede desarrollar rápidamente lógica compleja que de otro modo requeriría una amplia experiencia en programación.
Conceptos Clave en Node-RED
Flujos
Los flujos son representaciones visuales de sus procesos automatizados. Cada flujo consta de nodos conectados por cables que representan cómo se mueve la información a través del sistema. La cámara OV80i utiliza flujos para procesar resultados de inspección y comunicarse con sistemas externos.
Nodos
Los nodos son los bloques constructores de sus flujos, cada uno representando una función o capacidad específica:
- Nodos de entrada - Reciben datos (p. ej., disparadores de cámara, solicitudes HTTP)
- Nodos de procesamiento - Transforman o analizan datos (p. ej., lógica de clasificación)
- Nodos de salida - Envían datos a sistemas externos o activan acciones (p. ej., comunicación con PLC)
Mensajes
Los nodos se comunican pasando mensajes entre sí. En el sistema OV80i, estos mensajes suelen contener:
- Resultados de inspección
- Metadatos sobre los objetos inspeccionados
- Comandos para sistemas externos
- Señales de disparo
Almacenamiento de Contexto
Node-RED proporciona un método para almacenar información que puede compartirse entre diferentes nodos sin depender de mensajes que pasen por un flujo.
El 'alcance' de un valor de contexto particular determina quién puede acceder a él:
Tipo de Alcance | Visibilidad | Caso de Uso |
---|---|---|
Contexto de Nodo | Visible solo para el nodo que estableció el valor | Almacenar información temporal específica del nodo |
Contexto de Flujo | Visible para todos los nodos en el mismo flujo (pestaña) | Compartir datos entre nodos dentro del mismo flujo |
Contexto Global | Visible para todos los nodos en todos los flujos | Estado o configuración a nivel de aplicación |
Beneficios del Almacenamiento de Contexto
- Persistencia de Datos - Almacenar datos entre flujos de mensajes
- Flexibilidad de Alcance - Diferentes niveles de compartición de datos
- Gestión de Estado - Mantener el estado de la aplicación entre nodos
Botón Deploy
El botón Deploy en Node-RED le permite aplicar y enviar configuraciones al entorno de ejecución.
Opciones de Deploy:
- Deploy Completo - Actualiza todos los nodos y flujos
- Nodos Modificados - Actualiza solo los nodos que han cambiado
- Flujos Modificados - Actualiza solo los flujos que contienen nodos modificados
Importar y Exportar
Node-RED permite exportar e importar configuraciones de flujos como archivos JSON, lo que posibilita:
- Respaldo de las configuraciones de su cámara
- Compartir flujos entre miembros del equipo
- Mover configuraciones entre diferentes cámaras
Proceso de Exportación
- Abra el Editor Node-RED de la cámara
- Seleccione los flujos que desea exportar
- Haga clic en el botón de menú y seleccione "Export"
- Elija el formato JSON
Proceso de Importación
- Abra el Editor Node-RED de la cámara
- Haga clic en el botón de menú y seleccione "Import"
- Pegue los datos JSON o cargue el archivo JSON
- Haga clic en "Import" para integrar la configuración
- Deploy para aplicar los nuevos flujos
Debug
Propósito y Funcionalidad
El nodo Debug muestra mensajes en la barra lateral Debug del editor Node-RED, facilitando el desarrollo y solución de problemas de los flujos de inspección.
Características Clave
- Vista estructurada de mensajes en la barra lateral Debug
- Información detallada sobre el tiempo y origen del mensaje
- Capacidad para localizar nodos fuente en el espacio de trabajo
- Función de activación/desactivación para habilitar o deshabilitar la salida de debug
Capacidades del Dashboard
El Dashboard de Node-RED proporciona una interfaz web para monitorear y controlar su sistema de cámara mediante una IU personalizable.
Componentes Clave
- Administrador de Layout - Organiza los componentes de la IU
- Nodos UI - Añade elementos específicos de interfaz
- Personalización de Tema - Personaliza la apariencia
Elementos Comunes de la IU
- Botones - Activan acciones como cambios de receta
- Gráficas - Visualizan métricas de inspección a lo largo del tiempo
- Medidores - Monitorean valores dentro de un rango
- Visualizadores de texto - Muestran el estado actual de la cámara
- Deslizadores - Ajustan parámetros en tiempo real
Pasos para Crear un Dashboard
- Agregar Nodos UI a los Flujos - Arrastre y suelte nodos UI desde la paleta a sus flujos para definir los datos y controles que desea incluir en el dashboard
- Configurar Nodos UI - Configure las propiedades de cada nodo UI, como etiquetas, rangos y fuentes de datos
- Organizar Componentes - Use el administrador de layout para organizar los componentes de la IU en el dashboard, creando un diseño lógico y fácil de usar
- Deploy y Acceso al Dashboard - Despliegue sus flujos y acceda al dashboard navegando a la URL correspondiente (típicamente http://{hostname}/ui)
Trabajando con Node-RED en el OV80i
Acceso al Editor
El editor Node-RED en su cámara OV80i puede accederse a través de la IU.
Flujo Predeterminado
El OV80i incluye un flujo predeterminado preconfigurado que maneja operaciones básicas de inspección. Este sirve como punto de partida para sus configuraciones personalizadas y demuestra las mejores prácticas para la integración de la cámara.
Nodos Personalizados OV80i
La cámara extiende Node-RED con nodos especializados diseñados para aplicaciones de visión:
- Lógica de Clasificación - Procesa resultados de clasificación
- Formato PLC - Formatea datos para controladores industriales
- Resultado Final Pass/Fail - Determina resultados de inspección
Capacidades de Integración
El entorno Node-RED en el OV80i soporta integración con diversos sistemas industriales:
- PLCs vía Ethernet/IP, Profinet o Modbus
- MQTT para aplicaciones IoT
- HTTP/REST para servicios web
- Sistemas de base de datos para registro de datos
- Interfaces HMI para control de operador
Mejores Prácticas
Organización de Flujos
- Mantenga los flujos organizados por función
- Use comentarios para documentar lógica compleja
- Nombre los nodos claramente para indicar su propósito
- Use subflujos para patrones repetidos
Consideraciones de Rendimiento
- Minimice el número de nodos debug en producción
- Considere el impacto de disparadores de alta frecuencia
- Use variables de contexto eficientemente
- Pruebe exhaustivamente antes de desplegar
Estrategia de Respaldo
- Exporte y guarde regularmente sus flujos
- Documente los cambios de configuración
- Considere control de versiones para entornos de equipo
- Pruebe los flujos restaurados antes de uso en producción